package xyz.ddlnt.servicemq.service;

import com.baomidou.mybatisplus.extension.service.IService;
import xyz.ddlnt.model.dto.FollowDTO;
import xyz.ddlnt.model.entity.UserInfo;

/**
 * @author ZZULI_SE 210910
 * @data 2025/5/9 19:44
 */
public interface UserService extends IService<UserInfo> {
    /**
     * 用户发布帖子，帖子数加一
     * @param userId
     */
    void postPlusOne(Long userId);

    /**
     * 用户删除帖子，帖子数减一
     * @param userId
     */
    void postMinusOne(Long userId);

    /**
     * 用户关注，关注数加一
     * @param userId
     */
    void followPlusOne(Long userId);

    /**
     * 用户被关注，粉丝数加一
     * @param userId
     */
    void fansPlusOne(Long userId);

    /**
     * 用户取消关注，关注数减一
     * @param userId
     */
    void followMinusOne(Long userId);

    /**
     * 用户被取消关注，粉丝数减一
     * @param userId
     */
    void fansMinusOne(Long userId);

    /**
     * 用户收藏帖子，博主被收藏数加一
     * @param userId
     */
    void collectedCountPlusOne(Long userId);

    /**
     * 用户取消收藏帖子，博主被收藏数减一
     * @param userId
     */
    void collectedCountMinusOne(Long userId);
}
